package com.songlanyun.modules.usercard.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

import com.songlanyun.common.drive.RootEntity;
import lombok.Data;

/**
 * 用户绑定的银行卡（为了快捷支付）
 *
 * @author lubo
 * @email sunlightcs@gmail.com
 * @date 2023-03-22 11:16:38
 */
@Data
@TableName("yxt_user_card")
public class UserCardEntity extends RootEntity<Long,UserCardEntity> implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 *
	 */
	@TableId
	private Long id;
	/**
	 * 所属用户id
	 */
	private Long userId;
	/**
	 * 银行卡对应的预留手机号 String(11)
	 */
	private String telNo;
	/**
	 * 银行卡卡号，只能是数字，长度范围为8~32个字符 String(32)
	 */
	private String cardId;
	/**
	 * 是否是信用卡
	 */
	private Boolean credit;
	/**
	 * 信用卡验证码，若银行卡为信用卡时必填，银行卡背面签名条末三位 String(3)
	 */
	private String vipCode;
	/**
	 * 信用卡有效期，若银行卡为信用卡时必填 String(4)
	 */
	private String expiration;
	/**
	 * 招行借记卡绑卡需要上送；示例值：34463343
	 */
	private String protocolNo;
	/**
	 * Adapay生成的快捷绑卡申请id
	 */
	private String applyCardId;
	/**
	 * 银行名称
	 */
	private String bankName;
	/**
	 * Adapay生成的快捷卡唯一标识
	 */
	private String tokenNo;

	/**
	 * 是否有效
	 */
	private Boolean valid;

	/**
	 * 银行名称
	 */
	private String localBankName;

	/**
	 * 银行名称对应的标记
	 */
	private String localBankMark;

	/**
	 * 银行卡的类型
	 */
	private String localBankCardType;

	/**
	 * 银行卡类型的名称
	 */
	private String localBankCardTypeName;

	/**
	 * 创建时间
	 */
	@TableField(fill = FieldFill.INSERT)
	private Date createTime;
	/**
	 * 修改时间
	 */
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private Date updateTime;

	@Override
	public Long getIdentity() {
		return getId();
	}
}
